Resource scheduling is a challenging task that includes tradeoffs. For example, a resource scheduled to perform a task at time A, is not available to perform a different task at the same time. In another example, the time it takes for a resource to perform a task can limit a number of tasks fulfilled by the resource. Consider a resource that takes six minutes to perform a task, it cannot be scheduled to perform a task at a first time and a second task at five minutes after the first time, because it will not be available for another minute. Further yet, resources can be scarce and the number of tasks to be performed can be more than the scarce resources can handle. The resources can be insufficient to complete tasks to be performed in such circumstances, and thus some prioritization of tasks can help accomplish a task that is more important than another task.